<template>
    <div>
        <a-modal
                :width="modalWidth"
                :visible="visible"
                title="数据对比窗口"
                :confirmLoading="confirmLoading"
                @ok="handleOk"
                @cancel="handleCancel"
                cancelText="取消">

            <a-spin :spinning="confirmLoading">
                <a-form @submit="handleSubmit" :form="form" class="form">
                    <a-row class="form-row" :gutter="24">
                        <a-col :md="12" :sm="8">
                            <a-form-item label="数据库表名"  :label-col="{ span: 6 }" :wrapper-col="{ span: 15 }">
                                <a-input placeholder="请输入数据库表名" v-decorator="[ 'dataTale', {}]" @blur="handleTableBlur" disabled/>
                            </a-form-item>
                        </a-col>

                        <a-col :md="12" :sm="8">
                            <a-form-item label="数据ID"  :label-col="{ span: 5 }" :wrapper-col="{ span: 15 }">
                                <a-input placeholder="请输入数据ID" v-decorator="[ 'dataId', {}]" @blur="handleIdBlur" disabled/>
                            </a-form-item>
                        </a-col>
                    </a-row>

                    <a-row class="form-row" :gutter="24">
                        <a-col :md="12" :sm="8">
                            <a-form-item label="版本号1"  :label-col="{ span: 6 }" :wrapper-col="{ span: 15 }">
                                <a-select placeholder="请选择版本号" v-decorator="[ 'dataVersion1', {}]" @change="handleChange1">
                                    <a-select-option v-for="(log,logindex) in DataVersionList" :key="logindex.toString()" :value="log.id">
                                        {{ log.dataVersion }}
                                    </a-select-option>
                                </a-select>
                            </a-form-item>
                        </a-col>
                        <a-col :md="12" :sm="8">
                            <a-form-item label="版本号2"  :label-col="{ span: 5 }" :wrapper-col="{ span: 15 }">
                                <a-select placeholder="请选择版本号" v-decorator="[ 'dataVersion2', {}]" @change="handleChange2">
                                    <a-select-option v-for="(log,logindex) in DataVersionList" :key="logindex.toString()" :value="log.id">
                                        {{ log.dataVersion }}
                                    </a-select-option>
                                </a-select>
                            </a-form-item>
                        </a-col>
                    </a-row>
                </a-form>
            </a-spin>
            <data-log-compare-modal ref="modal" @ok="modalFormOk" ></data-log-compare-modal>
        </a-modal>
    </div>
</template>

<script>
import { getAction } from '@/api/manage'
import DataLogCompareModal from './DataLogCompareModal'
export default {
  name: 'DataLogModal',
  components: { DataLogCompareModal },
  dataId1: '',
  dataId2: '',
  dataTable1: '',
  dataID3: '',

  data () {
    return {
      modalWidth: 700,
      modaltoggleFlag: true,
      confirmDirty: false,
      title: "操作",
      visible: false,
      model: {},
      confirmLoading: false,
      headers: {},
      form: this.$form.createForm(this),
      url: {
        queryDataVerListUrl: "/sys/dataLog/queryDataVerList"
      },
      DataVersionList: []
    }
  },
  created () {
  },
  methods: {
    addModal(records) {
      const dataTable = records[0].dataTable
      const dataId = records[0].dataId;
      const dataVersion1 = records[0].dataVersion;
      const dataVersion2 = records[1].dataVersion;
      this.dataId1 = records[0].id;
      this.dataId2 = records[1].id;
      this.dataTable1 = records[0].dataTable
      this.dataID3 = records[0].dataId
      this.initDataVersionList();
      this.form.resetFields();
      this.visible = true;
      this.$nextTick(() => {
        this.form.setFieldsValue({ dataTale: dataTable, dataId: dataId, dataVersion1: dataVersion1, dataVersion2: dataVersion2 });
      });
    },
    handleOk () {
      this.close();
      this.$refs.modal.compareModal(this.dataId1, this.dataId2);
      this.$refs.modal.title = "数据比较";
    },
    handleCancel() {
      this.close()
    },
    handleSubmit() {
    },
    close () {
      this.$emit('close');
      this.visible = false;
      this.disableSubmit = false;
    },
    modalFormOk () {
    },
    initDataVersionList() {
      let that = this;
      getAction(that.url.queryDataVerListUrl, { dataTable: this.dataTable1, dataId: this.dataID3 }).then((res) => {
        if (res.success) {
          this.DataVersionList = res.result;
        } else {
          this.DataVersionList = [];
          this.dataId1 = '',
          this.dataId2 = '',
          console.log(res.message);
        }
      });
    },
    handleChange1(value) {
      this.dataId1 = value;
    },
    handleChange2(value) {
      this.dataId2 = value;
    },
    handleTableBlur(e) {
      this.dataTable1 = e.target.value;
      this.initDataVersionList();
    },
    handleIdBlur(e) {
      this.dataID3 = e.target.value;
      this.initDataVersionList();
    }
  }
}
</script>

<style scoped>

</style>
